/*****************************************************************************
*
*  PROJECT:     SlipStream
*               (Text classes)
*  LICENSE:     GNU General Public License v3 - http://www.gnu.org/licenses/gpl.html

*  DEVELOPERS:  Philip Farquharson <B00137077@studentmail.uws.ac.uk>
*				John Gray <B00145524@studentmail.uws.ac.uk>		
*				Zohaib Bhatti <B00104280@studentmail.uws.ac.uk>
*				Euan Hislop <B00138636@studentmail.uws.ac.uk>
*
*****************************************************************************/
#ifndef CTEXTMANAGER
#define CTEXTMANAGER

#include <stdio.h>
#include <stdlib.h>
#include <list>
#include "CTextObject.h"
#include "CSingleton.h"
#include <cassert>

using namespace std;

class CTextManager : public CSingleton < CTextManager >
{
    private:
        std::list<CTextObject*> m_textObjects;
		GLuint m_uiFontBase;

    public:
        CTextManager ( );
        ~CTextManager ( void );
        CTextObject* createTextObject ( CVector2 vecPosition, CColor colText, const char* szInitialText);
		void Draw();

		void setFontBase ( GLuint uiFontBase )							{ m_uiFontBase = uiFontBase; }
		const GLuint getFontBase ( void ) const							{ return m_uiFontBase; }
};
#endif